home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / music / slave.lzh / CH_11.TXT < prev    next >
Text File  |  1992-05-07  |  25KB  |  401 lines

  1. Applications
  2.  
  3. This chapter will guide you through the demo set included on your SLAVE
  4. DRIVER distribution disk, and suggest some useful applications for this
  5. software. From the SLAVE DRIVER edit screen, select LOAD SET from the TOOLS
  6. menu, and load the file "\SETS\DEMO.SET". In creating this file I used
  7. several songs that I use myself, some of which demonstrate the musical
  8. flexibility of performing with SLAVE DRIVER, while others demonstrate some
  9. useful MIDI scenarios which can be very handy to have around.
  10.  
  11. As mentioned earlier in this manual, different keyboards handle note off
  12. events differently. In the demo set, I use a DX7 receiving and transmitting
  13. on channel 1, and a Korg DSS1 receiving and transmitting on channel 2. The
  14. DX7 transmits note on, velocity zero when a key is released, and is easier
  15. to create maps for as note off relationships do not have to be created. The
  16. DX7, however, does not transmit note on messages correctly. The maximum
  17. velocity you can hit on a DX7 is somewhere between 108 and 110. In order to
  18. play another keyboard from a DX7, I will normally scale velocity up to the
  19. proper level by entering my MASTER velocity range as 0-108, and using 0-127
  20. for the SLAVE events' velocity ranges, as demonstrated by the first
  21. relationship in song 1, map 1. The DX7's local control also cannot be
  22. turned off, so I only use this as a master if a) it's own keyboard sound is
  23. to be included with the slave's sound, b) it's own sound is not needed (use
  24. the SEND field to turn it's volume to 0 or set it to a "silent" patch, and
  25. the RESET field to turn volume back up to 127), or c) either do a keyboard
  26. scale in the DX7 patch that puts the octaves you want to play off the top
  27. of the keyboard and scales the volume over the keyboard range down to 0, or
  28. use the SEND field and a bulk message to edit whatever patch may be
  29. currently called up on the DX in that fashion.
  30.  
  31. The DSS1 does transmit note off events, it's local control can be turned
  32. off, and velocity values are transmitted normally. When I want the DSS1 to
  33. play the DX7, I scale the velocity in the opposite direction, as
  34. demonstrated in the second relationship in song 1, map 1.
  35.  
  36. These instruments' MIDI OUTs are merged into the ATARI MIDI IN port using a
  37. Yamaha YMM-2 MIDI merger. This allows me to have two masters controlling
  38. the SLAVE DRIVER program. Although you may not have the same gear that was
  39. used in the demo, you will probably see ways to apply the demonstration to
  40. your specific instruments. If you don't have a MIDI merger, you will only
  41. be able to experiment with the relationships for one of the master
  42. instruments at a time.
  43.  
  44. Check whether your instruments transmit note-off events or not. If one
  45. does, set it to channel two and use it in place of the DSS1. If one
  46. doesn't, use it in place of the DX7. If you do use another instrument in
  47. place of the DX7, realize that the maps which scale up the velocity output
  48. from channel 1 will act a little strangely - if you play the instrument
  49. harder than a velocity of 108, the note on event will not be included in
  50. the master range and no slaves will be generated (a velocity split will be
  51. achieved where velocity values less than or equal to 108 will be rerouted,
  52. velocity values above will not, and the instrument will only play itself
  53. locally).
  54.  
  55. Song 1
  56.  
  57. As the first song's send field is executed automatically when a set is
  58. loaded, I use song 1 as a "loader" song that loads MIDI files and
  59. initializes my instruments for use with the set. If you move the cursor to
  60. the SEND field and scroll down through the existing entries, you will see
  61. load (L) commands for the various files listed in the BULK and SEQUENCE
  62. fields.
  63.  
  64. After the load commands, we come to the event "2  C 97  127". This is the
  65. beginning of a group of commands I have entered to initialize my DX7. Now,
  66. before you say, "Hey, you said your DX7 was on channel 1", I'll explain. In
  67. the section on SYNTH SCREEN in chapter 8, I mentioned that in order to use
  68. a DX7 in SYS INFO UNAVAIL mode with the remote display module, you needed
  69. to set the function parameter to the SYS INFO UNAVAIL screen on the DX
  70. before putting the DX in play mode. Instead of going through that procedure
  71. every night at the gig, I have set up the song 1 send field to perform some
  72. "button remote" commands. First of all, I don't bother with the DX before
  73. running the remote display module. Therefore, when the remote display
  74. module sends a data increment command to turn the DX from SYS INFO UNAVAIL
  75. to SYS INFO AVAIL mode, it instead increments the DX's MIDI channel. So
  76. just in case this has happened, I send the data decrement message to
  77. channel 2, decrementing the MIDI channel to 1. If the DX had already been
  78. initialized and wasn't receiving on channel 2, then the message would be
  79. ignored because my DSS1 (on channel 2) doesn't recognize data increment or
  80. decrement commands.
  81.  
  82. Then a sysex file is sent, "P  BLK    2", which transmits the file
  83. A:\SYSEX\DX7\LOAD_FIX.SYS. This is a MIDI file containing button remote
  84. sysex messages for the DX, pushing first the FUNCTION MODE button, then the
  85. #1 function "Master Tuning", the #8 button "MIDI Channel", and finally the
  86. #8 button again, changing the display to "SYS INFO UNAVAIL". Now to return
  87. the DX into play mode, I transmit sysex file #1, SEL_CART.SYS, which
  88. pushes the MEMORY SELECT - CARTRIDGE button. I keep this button message in
  89. a separate file because I use it in other places in the set, so that I
  90. never have to push the cartridge button before pushing a program number on
  91. the DX7 (all of my DX programs that are song triggers are on the cartridge
  92. program numbers).
  93.  
  94. Now that my DX7 is initialized and ready to receive text from the remote
  95. display module, the load commands for the sequence files have been entered.
  96. With lots of sequences, loading from floppy can take a minute or two.
  97. Meanwhile my DSS1 is also loading it's samples from it's own disk drive,
  98. which will also take about a minute. When it is finished loading, it is in
  99. SYSTEM mode, and needs to be put into the play mode in order for me to
  100. select different programs. Once the sequences have been loaded by SLAVE
  101. DRIVER, the DSS1 will also be loaded, so the next event in the SEND field
  102. will transmit a PLAYMODE command to the DSS1, in the form of another SYSEX
  103. MIDI file.
  104.  
  105. While the DSS1 and the remote display module were loading files, my DSM1
  106. was also loading samples from it's disk drive. My DSM1, when first turned
  107. on, does not know that it is supposed to be receiving on channel 4 until it
  108. is put into the play mode. Therefore, I transmit to it a PLAY MODE sysex
  109. command both on channel 4, and on it's power-up default channel 1 (by using
  110. "1" instead of "P" in the BLK event, the file actually sees the message
  111. as being on channel 4).
  112.  
  113. No trigger has been entered for this song/map, since it is only intended to
  114. be run once when the set is first loaded. Three relationships have been
  115. entered, only for demonstration of the DX7 scaling mentioned in an earlier
  116. paragraph. You will also notice that this song has a second map. Click on
  117. the UP arrow in the trigger box to display the data in this map.
  118.  
  119. This map again is only being used for it's send field, and has no trigger
  120. as it is intended to be selected only by using the ATARI keyboard. On my
  121. off weeks, I will often load a different set of programs into my DX7 for
  122. working on my own solo project. Once I got to a gig with my ATARI computer,
  123. and no monitor, only to discover that I had forgotten to replace my gig
  124. sounds into the DX. So I later set up this map, so that all I had to do if
  125. this happened again was to press 2 on the numeric keypad. This map first
  126. sets SYS INFO AVAIL with the data increment command (1  C 96  127), then
  127. plays a sysex file that presses all the appropriate memory protect buttons
  128. on the DX7, loads my DX7 sounds that were saved with the bulk librarian,
  129. transmits them to the DX, and then turns the DX7's memory protect back on.
  130. The map also sends the appropriate reverb patches to my DSP128+ while it's
  131. at it. To protect you from accidentally overwriting all